home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Grab Bag
/
Shareware Grab Bag.iso
/
007
/
qwik30.arc
/
QINITEST.PAS
< prev
next >
Wrap
Pascal/Delphi Source File
|
1987-08-31
|
3KB
|
97 lines
{ Qinitest.pas - tests your system configuration ver 3.0, 08-31-87 }
{$i qwik30.inc}
var
CursorMode: integer absolute $0040:$0060;
Tattr: byte absolute Dseg:$0008;
CRTcols: byte;
i,OldVmode: integer;
Strng: Str80;
ch: char;
procedure DisplayDev (DD: byte);
begin
case DD of
$00: Strng:='No display';
$01: Strng:='MDA with 5151 monochrome';
$02: Strng:='CGA with 5153/4 color';
$04: Strng:='EGA with 5153/4 color';
$05: Strng:='EGA with 5151 monochrome';
$06: Strng:='PGC with 5175 color';
$07: Strng:='VGA with analog monochrome';
$08: Strng:='VGA with analog color';
$0B: Strng:='MCGA with analog monochrome';
$0C: Strng:='MCGA with analog color';
$03,$09..$0A,$0D..$FE: Strng:='reserved';
end; { case }
end;
begin
OldVmode:=Vmode;
Qinit;
CRTcols:=CRTcolumns;
NormVideo;
Qfill (1,1,25,CRTcols,Tattr,' ');
Qwrite (1,1,-1,'Which text mode [0,1,2,3,7] ? ');
GotoRC (1,31);
readln (i);
if i in [0..3,7] then
begin
TextMode(i);
Qinit;
end;
Qfill (1,1,25,CRTcols,Tattr,' ');
case SystemID of
$FF: Strng:='IBM PC';
$FE: Strng:='IBM PC XT';
$FD: Strng:='IBM PCjr';
$FC: case SubModelID of
$00: Strng:='IBM PC AT (6 MHz)';
$01: Strng:='IBM PC AT (8 MHz)';
$02: Strng:='IBM PC XT (286)';
$04: Strng:='IBM PS/2 Model 50';
$05: Strng:='IBM PS/2 Model 60';
else Strng:='IBM PS/2 VGA type';
end;
$FB: Strng:='IBM PC XT (256/640)';
$FA: case SubModelID of
$00: Strng:='IBM PS/2 Model 30';
$01: Strng:='IBM PS/2 Model 25';
else Strng:='IBM PS/2 MCGA type';
end;
$F9: Strng:='IBM PC convertible';
$F8: case SubModelID of
$00: Strng:='IBM PS/2 Model 80 (16 MHz)';
$01: Strng:='IBM PS/2 Model 80 (20 MHz)';
else Strng:='IBM PS/2 Model 70/80 type';
end;
end; { case }
writeln ('Equip=',SystemID,' ',Strng);
writeln ('SubModel =',SubModelID);
writeln ('PS/2 equip =',HavePS2);
writeln ('Vmode start =',OldVmode);
writeln ('Vmode now =',Vmode);
writeln ('Wait =',Qwait);
writeln ('Max page # =',MaxPage);
DisplayDev (ActiveDD);
writeln ('Active DD =',ActiveDD,' ',Strng);
DisplayDev (AltDD);
writeln ('Alternate DD=',AltDD,' ',Strng);
writeln ('PC Conv AltD=',PCCAltDD,' (dec)');
writeln ('Cursor start=',hi(CursorMode));
writeln ('Cursor end =',lo(CursorMode));
writeln ('CRT columns =',CRTcols);
if (ActiveDD>=EgaColor) and (ActiveDD<=VgaColor) then
begin
writeln ('EGA rows =',EgaRows);
writeln ('EGA FontSize=',EgaFontSize);
writeln ('EGA Info =',EgaInfo);
writeln ('EGA Switches=',EgaSwitches);
end;
writeln;
write ('Press any key...');
read (kbd,ch);
TextMode (OldVmode);
end.